// 文档：https://waytoagi.feishu.cn/wiki/R4YswSIrFi5fDak6wAUcJJFVnGc
// 根据上述文档标准定义参数

/** 获取图片风格 */
export const getStyle = () => {}

/** 图片质量 */
type IQuality = 0.25 | 0.5 | 1
/**
 * 获取图片质量
 */
export const getQuality = (num: IQuality) => {
  return ' --q ' + num
}

/**
 * 获取图片比例
 * size: 1:1, 2:1,...
 */
export const getRatio = (size: string) => {
  return ' --ar ' + size
}

// 根据画布尺寸获取宽高比例
export const getCurrentRatio = (dPage: any) => {
  const { width, height } = dPage
  function gcd(m: number, n: number) {
    let max = m > n ? m : n
    let min = m < n ? m : n
    if (max % min === 0) {
      return min
    }
    return gcd(min, max % min)
  }
  const res = gcd(width, height)
  return ` --ar ${width / res}:${height / res}`
}

/**
 * 获取图片渲染类型
 */
export const getRender = (type: number) => {
  return type === 0 ? '' : type === 1 ? ' --niji 6 ' : ' --tile'
}

/**
 * 获取图片渲染类型风格
 */
export const getRenderType = (type: number) => {
  switch (type) {
    case 0:
      return ''
    case 1:
      return ' --style raw --stylize 100'
    case 2:
      return ' --style raw --stylize 400'
    case 3:
      return ' --style raw --stylize 700'
    case 4:
      return ' --style raw --stylize 1000'
    default:
      return ''
  }
}
